在Android架構,總共是由5個部份來組成。分別是:
(1)Applications(應用程式)
(2)Application Framework(應用程式架構)
(3)Libraries(函式庫)
(4)Android Runtime(Android執行環境)
(5)Linux Kernel(Linux核心)
在這個章節中,首先,來討論Applications(應用程式)及Application Framework(應用程式架構)。
在Android架構,總共是由5個部份來組成。分別是:
(1)Applications(應用程式)
(2)Application Framework(應用程式架構)
(3)Libraries(函式庫)
(4)Android Runtime(Android執行環境)
(5)Linux Kernel(Linux核心)
在這個章節中,首先,依由上而下的順序來討論Applications(應用程式)及Application Framework(應用程式架構),後續再討論Libraries(函式庫)、Android Runtime(Android執行環境)及Linux Kernel(Linux核心)。
Applications(應用程式)及Application Framework(應用程式架構)的圖形,如圖2所示。下述為各層級的描述。
圖2
Application(應用程式)
在Android SDK(軟體開發套件)所用的手機模擬器及未來實體的手機中,都會有一系列以Java語言撰寫的核心應用程式,包含電子郵件程式、簡訊程式、日曆、地圖、瀏覽器、聯絡人與其它應用程式。讓使用者一開始就可以使用這些基本的功能來操作應用手機。
Application Framework (應用程式架構)
在Android SDK(軟體開發套件),也定義了能讓開發者可以完整使用與核心應用程式相同的應用程式標準介面(API),應用程式架構是為了要簡化元件的重新利用而設計的,應用程式可以發佈功能並為其它應用程式所使用,但是,要受限於應用程式架構的安全限制,使用者也用同樣的機制用來新增、置換元件。
目前所有的應用程式是由Services(服務)及Systems(系統)來組成,包含有:
A.Views System(建構程式原件):用來建構一個應用程式的基本原件,包含了在開發系統畫面時,常用的lists、grids、text boxes、buttons控制項,甚至是嵌入式的瀏覽器。有興趣想要看程式控制項的讀者可以參考下述網址:http://code.google.com/android/reference/view-gallery.html
B.Content Providers(內容提供者):可以用來讓應用程式可以存取或分享資料給其它應用程式。
C.Resource Manager(資源管理員):提供各種非程式碼的資源讓應用程式去使用,例如:本地化字串、圖形或排版相關檔案。
D.Notification Manager(訊息管理員):提供應用程式在狀態列(Status Bar)的地方顯示應用程式自定的警示訊息(Alert)。
E.Activity Manager(活動管理員):管理所有應用程式的生命週期及一般性的回溯導航處理(navigation backstack)。例如:開啟應用程式要用到的資源準備及關閉應用程式時,釋放出記憶體及相關資源等工作。
F.Window Manager(視窗管理員):用來管理所有開啟的視窗程式。
G.Location Manager:用來管理地圖服務的相關功能。
H.Telephony Manager:用來管理有關使用者撥打與接收電話的相關功能。
I.Package Manager:管理所有安裝在Android系統內的程式。